package com.hui.admin.utils;

import java.util.HashMap;
import java.util.Map;

/**
 * 将省份拼音转换为中文
 */
public class ProvincePinyinToChineseUtil {

    // 创建拼音到中文的映射表
    private static final Map<String, String> pinyinToChineseMap = new HashMap<>();

    static {
        pinyinToChineseMap.put("beijing", "北京市");
        pinyinToChineseMap.put("shanghai", "上海市");
        pinyinToChineseMap.put("tianjin", "天津市");
        pinyinToChineseMap.put("chongqing", "重庆市");
        pinyinToChineseMap.put("hebei", "河北省");
        pinyinToChineseMap.put("shanxi", "山西省");
        pinyinToChineseMap.put("liaoning", "辽宁省");
        pinyinToChineseMap.put("jilin", "吉林省");
        pinyinToChineseMap.put("heilongjiang", "黑龙江省");
        pinyinToChineseMap.put("jiangsu", "江苏省");
        pinyinToChineseMap.put("zhejiang", "浙江省");
        pinyinToChineseMap.put("anhui", "安徽省");
        pinyinToChineseMap.put("fujian", "福建省");
        pinyinToChineseMap.put("jiangxi", "江西省");
        pinyinToChineseMap.put("shandong", "山东省");
        pinyinToChineseMap.put("henan", "河南省");
        pinyinToChineseMap.put("hubei", "湖北省");
        pinyinToChineseMap.put("hunan", "湖南省");
        pinyinToChineseMap.put("guangdong", "广东省");
        pinyinToChineseMap.put("hainan", "海南省");
        pinyinToChineseMap.put("sichuan", "四川省");
        pinyinToChineseMap.put("guizhou", "贵州省");
        pinyinToChineseMap.put("yunnan", "云南省");
        pinyinToChineseMap.put("shaanxi", "陕西省");
        pinyinToChineseMap.put("gansu", "甘肃省");
        pinyinToChineseMap.put("qinghai", "青海省");
        pinyinToChineseMap.put("taiwan", "台湾省");
        pinyinToChineseMap.put("neimenggu", "内蒙古自治区");
        pinyinToChineseMap.put("guangxi", "广西壮族自治区");
        pinyinToChineseMap.put("xizang", "西藏自治区");
        pinyinToChineseMap.put("ningxia", "宁夏回族自治区");
        pinyinToChineseMap.put("xinjiang", "新疆维吾尔自治区");
        pinyinToChineseMap.put("xianggang", "香港特别行政区");
        pinyinToChineseMap.put("aomen", "澳门特别行政区");
    }

    /**
     * 根据拼音获取带“省”的中文省份名称
     *
     * @param pinyin 拼音
     * @return 带“省”的中文省份名称，如果找不到则返回null
     */
    public static String getProvinceNameByPinyin(String pinyin) {
        return pinyinToChineseMap.get(pinyin);
    }
}

